package com.zondy.mapgis.domain.psmap;

import com.zondy.mapgis.common.core.annotation.Excel;
import com.zondy.mapgis.common.core.web.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;

@Schema(
   name = "应用微件对象"
)
public class AppStoreWidget extends BaseEntity {
   private static final long serialVersionUID = 1L;
   @Schema(
      description = "应用微件ID（GUID）"
   )
   private String appWidgetId;
   @Schema(
      description = "微件ID"
   )
   private Long widgetId;
   @Schema(
      description = "微件配置"
   )
   @Excel(
      name = "微件配置"
   )
   private String appWidgetConfig;
   @Schema(
      description = "微件位置"
   )
   @Excel(
      name = "微件位置"
   )
   private String appWidgetLocation;
   @Schema(
      description = "微件对象"
   )
   private AppWidget widget;

   public String getAppWidgetId() {
      return this.appWidgetId;
   }

   public Long getWidgetId() {
      return this.widgetId;
   }

   public String getAppWidgetConfig() {
      return this.appWidgetConfig;
   }

   public String getAppWidgetLocation() {
      return this.appWidgetLocation;
   }

   public AppWidget getWidget() {
      return this.widget;
   }

   public AppStoreWidget setAppWidgetId(String appWidgetId) {
      this.appWidgetId = appWidgetId;
      return this;
   }

   public AppStoreWidget setWidgetId(Long widgetId) {
      this.widgetId = widgetId;
      return this;
   }

   public AppStoreWidget setAppWidgetConfig(String appWidgetConfig) {
      this.appWidgetConfig = appWidgetConfig;
      return this;
   }

   public AppStoreWidget setAppWidgetLocation(String appWidgetLocation) {
      this.appWidgetLocation = appWidgetLocation;
      return this;
   }

   public AppStoreWidget setWidget(AppWidget widget) {
      this.widget = widget;
      return this;
   }

   public String toString() {
      return "AppStoreWidget(appWidgetId=" + this.getAppWidgetId() + ", widgetId=" + this.getWidgetId() + ", appWidgetConfig=" + this.getAppWidgetConfig() + ", appWidgetLocation=" + this.getAppWidgetLocation() + ", widget=" + this.getWidget() + ")";
   }

   public boolean equals(Object o) {
      if (o == this) {
         return true;
      } else if (!(o instanceof AppStoreWidget)) {
         return false;
      } else {
         AppStoreWidget other = (AppStoreWidget)o;
         if (!other.canEqual(this)) {
            return false;
         } else if (!super.equals(o)) {
            return false;
         } else {
            label73: {
               Object this$widgetId = this.getWidgetId();
               Object other$widgetId = other.getWidgetId();
               if (this$widgetId == null) {
                  if (other$widgetId == null) {
                     break label73;
                  }
               } else if (this$widgetId.equals(other$widgetId)) {
                  break label73;
               }

               return false;
            }

            Object this$appWidgetId = this.getAppWidgetId();
            Object other$appWidgetId = other.getAppWidgetId();
            if (this$appWidgetId == null) {
               if (other$appWidgetId != null) {
                  return false;
               }
            } else if (!this$appWidgetId.equals(other$appWidgetId)) {
               return false;
            }

            label59: {
               Object this$appWidgetConfig = this.getAppWidgetConfig();
               Object other$appWidgetConfig = other.getAppWidgetConfig();
               if (this$appWidgetConfig == null) {
                  if (other$appWidgetConfig == null) {
                     break label59;
                  }
               } else if (this$appWidgetConfig.equals(other$appWidgetConfig)) {
                  break label59;
               }

               return false;
            }

            Object this$appWidgetLocation = this.getAppWidgetLocation();
            Object other$appWidgetLocation = other.getAppWidgetLocation();
            if (this$appWidgetLocation == null) {
               if (other$appWidgetLocation != null) {
                  return false;
               }
            } else if (!this$appWidgetLocation.equals(other$appWidgetLocation)) {
               return false;
            }

            Object this$widget = this.getWidget();
            Object other$widget = other.getWidget();
            if (this$widget == null) {
               if (other$widget != null) {
                  return false;
               }
            } else if (!this$widget.equals(other$widget)) {
               return false;
            }

            return true;
         }
      }
   }

   protected boolean canEqual(Object other) {
      return other instanceof AppStoreWidget;
   }

   public int hashCode() {
      boolean PRIME = true;
      int result = super.hashCode();
      Object $widgetId = this.getWidgetId();
      result = result * 59 + ($widgetId == null ? 43 : $widgetId.hashCode());
      Object $appWidgetId = this.getAppWidgetId();
      result = result * 59 + ($appWidgetId == null ? 43 : $appWidgetId.hashCode());
      Object $appWidgetConfig = this.getAppWidgetConfig();
      result = result * 59 + ($appWidgetConfig == null ? 43 : $appWidgetConfig.hashCode());
      Object $appWidgetLocation = this.getAppWidgetLocation();
      result = result * 59 + ($appWidgetLocation == null ? 43 : $appWidgetLocation.hashCode());
      Object $widget = this.getWidget();
      result = result * 59 + ($widget == null ? 43 : $widget.hashCode());
      return result;
   }
}
